# coding:utf-8
from flask_bootstrap import Bootstrap
from flask_nav import Nav
from flask_nav.elements import *
from flask import Flask, render_template

app = Flask(__name__) # 创建一个 Flask 应用
'''
bootstrap.load_css() 加载 Bootstrap 样式资源
bootstrap.load_js() 加载 Bootstrap 脚本资源
参数: 
    version，指定 Bootstrap 脚本版本号，默认为 4.3.1，本地资源无效
    jquery_version，指定 JQuery 版本号，默认为 3.3.1，本地资源无效
    popper_version，指定 Popper 版本号，默认为 1.14.0，本地资源无效
    with_jquery，是否加载 JQuery， 默认为 True
    with_popper，是否加载 Popper, 默认为 True
    
    bootstrap-flask 主要的改进是加入了很多方法是用的宏，让对页面效果的编辑像写逻辑代码一样，并在宏中还对所处环境信息进行了判断，比如菜单是否要激活，分页控件动态效果
    
    文档：https://bootstrap-flask.readthedocs.io/en/latest/basic.html
'''
bootstrap = Bootstrap(app) # 为应用初始化 bootstrap
nav=Nav()
nav.register_element('top',Navbar(u'Flask入门',
                                    View(u'主页','home'),
                                    View(u'关于','about'),
                                    Subgroup(u'项目',
                                             View(u'项目一','about'),
                                             Separator(),
                                             View(u'项目二', 'service'),
                                    ),
                                  ))


@app.route('/')
def index():
    return render_template('index.html')


@app.route('/test')
def test():
    return render_template('test.html')


@app.route('/user/<name>')
def user(name=None):
    return render_template('user.html',name=name)


@app.route('/hello')
def hello_world():
    return 'Hello World!'


if __name__ == '__main__':
    app.run()

